<script setup>
import { onMounted, onUnmounted } from 'vue';
import AMapLoader from '@amap/amap-jsapi-loader';

let map = null;

onMounted(() => {
    window._AMapSecurityConfig = {
        securityJsCode: "2482de53faf5afb6eec3cd2971df235a",
    };
    AMapLoader.load({
        key: "1560f6611857115feec5d4e710da914f", // 申请好的Web端开发者Key，首次调用 load 时必填
        version: "2.0", // 指定要加载的 JSAPI 的版本，缺省时默认为 1.4.15
        plugins: ["AMap.Scale"], //需要使用的的插件列表，如比例尺'AMap.Scale'，支持添加多个如：['...','...']
    })
        .then((AMap) => {
            map = new AMap.Map("container", {
                // 设置地图容器id
                viewMode: "2D", // 是否为3D地图模式
                zoom: 16, // 初始化地图级别
                center: [91.118463, 29.654471], // 初始化地图中心点位置
            });

            //异步加载工具条插件
            AMap.plugin("AMap.ToolBar", function () {
                //在回调函数中实例化插件，并使用插件功能
                var toolbar = new AMap.ToolBar() //创建工具条插件实例
                map.addControl(toolbar) //添加工具条插件到页面

                var scale = new AMap.Scale()
                map.addControl(scale);
                
            });


        })
        .catch((e) => {
            console.log(e);
        });

});

onUnmounted(() => {
    map?.destroy();
});

</script>

<template>
    <div id="container"></div>
</template>    

<style scoped>
#container {
    padding: 0;
    margin: 20px 0;
    width: 100%;
    height: 500px;
}
</style>